#include "MenuPrincipal.h"
#include "PrincipalConstantes.h"
#include "ConstantesGlobais.h"
#include "Mensagens.h"

#include "Vetor.h"

#include<iostream>

using namespace std;

using namespace entregadepedidos;
using namespace entregadepedidos::util::global;
using namespace entregadepedidos::entidades::menu;
using namespace entregadepedidos::util::entidades::vetor;


/** Classe para executar o projeto
  *  Autor: Rafael Bueno
  *  Data: 31/05/2008
*/
int main() {
	
	try{
		
		MenuPrincipal *menuPrincipal = new MenuPrincipal(4);
		menuPrincipal->setTitulo(PrincipalConstantes::GET_CABECALHO());
		menuPrincipal->adicionaItem(0, PrincipalConstantes::GET_MENU1());
		menuPrincipal->adicionaItem(1, PrincipalConstantes::GET_MENU2());
		menuPrincipal->adicionaItem(2, PrincipalConstantes::GET_MENU3());
		menuPrincipal->adicionaItem(3, PrincipalConstantes::GET_MENU4());
		menuPrincipal->getOpcao();
		
	}catch(MenuException ex){
		system(ConstantesGlobais::GET_LIMPA_TELA());
		cerr << ex.getDetalhe() << endl;
		main();
		system(ConstantesGlobais::GET_PAUSE());
	}catch(...){
		system(ConstantesGlobais::GET_LIMPA_TELA());
		cerr << Mensagens::GET_PRINCIPAL_ERRO_PERSONALIZADO() << endl;
		main();
		system(ConstantesGlobais::GET_PAUSE());
	}
	
	return 0;
	
}
